141 research outputs found

    A Review on Software Architectures for Heterogeneous Platforms

    Full text link
    The increasing demands for computing performance have been a reality regardless of the requirements for smaller and more energy efficient devices. Throughout the years, the strategy adopted by industry was to increase the robustness of a single processor by increasing its clock frequency and mounting more transistors so more calculations could be executed. However, it is known that the physical limits of such processors are being reached, and one way to fulfill such increasing computing demands has been to adopt a strategy based on heterogeneous computing, i.e., using a heterogeneous platform containing more than one type of processor. This way, different types of tasks can be executed by processors that are specialized in them. Heterogeneous computing, however, poses a number of challenges to software engineering, especially in the architecture and deployment phases. In this paper, we conduct an empirical study that aims at discovering the state-of-the-art in software architecture for heterogeneous computing, with focus on deployment. We conduct a systematic mapping study that retrieved 28 studies, which were critically assessed to obtain an overview of the research field. We identified gaps and trends that can be used by both researchers and practitioners as guides to further investigate the topic

    An Extended Model for Multi-Criteria Software Component Allocation on a Heterogeneous Embedded Platform

    Get PDF
    A recent development of heterogeneous platforms (i.e. those containing different types of computational units such as multicore CPUs, GPUs, and FPGAs) has enabled significant improvements in performance for real-time data processing. This potential, however, is still not fully utilized due to the lack of methods for optimal configuration of software; the allocation of different software components to different computational unit types is crucial for getting the maximal utilization of the platform, but for more complex systems it is difficult to find ad-hoc a good enough or the best configuration. With respect to system and user defined constraints, in this paper we are applying analytical hierarchical process and a genetic algorithm to find feasible, locally optimal solution for allocating software components to computational units

    Antibodies Are Not Essential for the Resolution of Primary Cytomegalovirus Infection but Limit Dissemination of Recurrent Virus

    Get PDF
    Virus shedding from the epithelial cells of the serous acini of salivary glands is a major source for the horizontal transmission of cytomegalovirus. These cells are, different to other tissues, exempt from CD8 T lymphocyte control. CD4 T lymphocytes are essential to terminate the productive infection. Here, we prove that T-B cooperation and the production of antibodies are not required for this process. For the infection with murine cytomegalovirus, mutant mice were used which do not produce antibodies because of a disrupted membrane exon of the immunoglobulin # chain gene. Also, in these mice the virus clearance from salivary glands is a function of CD4 T lymphocytes. However, these mice clear the virus and establish viral latency with a kinetics that is distinguishable from normal mice. Reactivation from virus latency is the only stage at which the absence of antibodies alters the phenotype of infection. In immunoglobulindeficient mice, virus recurrence results in higher virus titers. The adoptive serum transfer proved that antibody is the limited factor that prevents virus dissemination in the immunodeficient hos

    Refactoring Software in the Automotive Domain for Execution on Heterogeneous Platforms

    Get PDF
    The most important way to achieve higher performance in computer systems is through heterogeneous computing, i.e., by adopting hardware platforms containing more than one type of processor, such as CPUs, GPUs, and FPGAs. Several types of algorithms can be executed significantly faster on a heterogeneous platform. However, migrating CPU-executable software to other types of execution platforms poses a number of challenges to software engineering. Significant efforts are required in such type of migration, particularly for re-architecting and re-implementing the software. Further, optimizing it in terms of performance and other runtime properties can be very challenging, making the process complex, expensive, and errorprone. Therefore, a systematic approach based on explicit and justified architectural decisions is needed for a successful refactoring process from a homogeneous to a heterogeneous platform. In this paper, we propose a decision framework that supports engineers when refactoring software systems to accommodate heterogeneous platforms. It includes the assessment of important factors in order to minimize the risk of recurrent problems in the process. Through a set of questions, practitioners are able to formulate answers that will help in making appropriate architectural decisions to accommodate heterogeneous platforms. The contents of the framework have been developed and evolved based on discussions with architects and developers in the automotive domain

    HPM-Frame: A Decision Framework for Executing Software on Heterogeneous Platforms

    Full text link
    Heterogeneous computing is one of the most important computational solutions to meet rapidly increasing demands on system performance. It typically allows the main flow of applications to be executed on a CPU while the most computationally intensive tasks are assigned to one or more accelerators, such as GPUs and FPGAs. The refactoring of systems for execution on such platforms is highly desired but also difficult to perform, mainly due the inherent increase in software complexity. After exploration, we have identified a current need for a systematic approach that supports engineers in the refactoring process -- from CPU-centric applications to software that is executed on heterogeneous platforms. In this paper, we introduce a decision framework that assists engineers in the task of refactoring software to incorporate heterogeneous platforms. It covers the software engineering lifecycle through five steps, consisting of questions to be answered in order to successfully address aspects that are relevant for the refactoring procedure. We evaluate the feasibility of the framework in two ways. First, we capture the practitioner's impressions, concerns and suggestions through a questionnaire. Then, we conduct a case study showing the step-by-step application of the framework using a computer vision application in the automotive domain.Comment: Manuscript submitted to the Journal of Systems and Softwar

    Platelet activating factor (1-O-alkyl-2-O-acetyl-sn-glycero-3-phosphocholine) Activity of analogs lacking oxygen at the 2-position

    Get PDF
    In mission-critical Internet of Things systems, applications require not only high availability, reliability, safety, and security but also regulatory compliance, scalability, and serviceability. In addition, they\u27re exposed to uncertainty and variability. Model-driven engineering is a candidate for meeting these challenges

    A taxonomy of software engineering challenges for machine learning systems: An empirical investigation

    Get PDF
    Artificial intelligence enabled systems have been an inevitable part of everyday life. However, efficient software engineering principles and processes need to be considered and extended when developing AI- enabled systems. The objective of this study is to identify and classify software engineering challenges that are faced by different companies when developing software-intensive systems that incorporate machine learning components. Using case study approach, we explored the development of machine learning systems from six different companies across various domains and identified main software engineering challenges. The challenges are mapped into a proposed taxonomy that depicts the evolution of use of ML components in software-intensive system in industrial settings. Our study provides insights to software engineering community and research to guide discussions and future research into applied machine learning

    Participation of endogenous tumour necrosis factor α in host resistance to cytomegalovirus infection

    Get PDF
    Interferon gamma (IFN) represents an essential cytokine involved in murine cytomegalovirus (MCMV) clearance from the salivary gland and the control of horizontal transmission. Because IFN cannot be responsible for all cytokine effects during recovery from MCMV infection we have now tested the potential participation of tumour necrosis factor alpha (TNF) in the antiviral defence. Neutralization of endogenous TNF abolished the antiviral activity of CD4 T cells in immunocompetent as well as in CD8 subset-deficient mice. These data suggest that the antiviral effect of the CD4 subset requires the presence of at least two cytokines, namely IFN and TNF. Depletion of endogenous TNF in adoptive cell transfer recipients diminished the antiviral function of CD8 T lymphocytes suggesting that TNF also participates in CD8 T cell effector functions. Furthermore, endogenous cytokines were found to be required for survival after infection with lethal doses of MCMV, whereas immunotherapy with recombinant TNF and IFN could not limit virus replication in vivo. The results suggest that, similar to IFN, TNF is an integral part of the protective mechanisms involved in cytomegalovirus clearance
    corecore